﻿using Newtonsoft.Json.Linq;
using Wicture.DbRESTFul.SQL;
using Wicture.EPC.Service.Etka.QueryInterceptors;

namespace Wicture.EPC.Service.Etka.Repository
{
    public class EpcRepository : DbRESTFulRepository
    {
        public object ModelSelector(JObject param)
        {
            return QueryInterceptorManager.Interceptor(this, param);
        }

        /// <summary>
        /// 2、查询主组
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public object QueryMainGroup(JObject param)
        {
            return QueryInterceptorManager.Interceptor(this, param);
        }

        /// <summary>
        /// 3、查询子组
        /// </summary>  
        /// <param name="param"></param>
        /// <returns></returns>
        public object QuerySubGroup(JObject param)
        {
            return QueryInterceptorManager.Interceptor(this, param);
        }

        /// <summary>
        /// 4、查询零件列表（通过子组或vin码）
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public object QueryParts(JObject param)
        {
            return QueryInterceptorManager.Interceptor(this, param);
        }

        /// <summary>
        /// 5、获取配件详情
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public object QueryPartDetail(JObject param)
        {
            return QueryInterceptorManager.Interceptor(this, param);
        }

        /// <summary>
        /// 6.查询热点信息
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public object QueryHotPoints(JObject param)
        {
            return QueryInterceptorManager.Interceptor(this, param);
        }

        /// <summary>
        /// 7.指定车型的详细信息
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public object QueryModel(JObject param)
        {
            return QueryInterceptorManager.Interceptor(this, param);
        }

        /// <summary>
        /// 获取面包屑导航栏
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public object GetCrumbs(JObject param)
        {
            return QueryInterceptorManager.Interceptor(this, param);
        }

        /// <summary>
        /// EPC内零件搜索
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public object SearchParts(JObject param)
        {
            return QueryInterceptorManager.Interceptor(this, param);
        }

        public object QueryFitModels(JObject param)
        {
            return QueryInterceptorManager.Interceptor(this, param);
        }
        public object QueryAllPartsByVin(JObject param)
        {
            return QueryInterceptorManager.Interceptor(this, param);
        }
        public object QueryPartsFilterByVin(JObject param)
        {
            return QueryInterceptorManager.Interceptor(this, param);
        }
        public object QueryMaintainParts(JObject param)
        {
            return QueryInterceptorManager.Interceptor(this, param);
        }

        /// <summary>
        /// vin码快速找件
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public object QuickQueryParts(JObject param)
        {
            return QueryInterceptorManager.Interceptor(this, param);
        }
    }
}


